The present invention relates generally to computer files and, more particularly, to the display of computer files.
The Internet is a worldwide decentralized network of computers having the ability to communicate with each other. The Internet has gained broad recognition as a viable medium for communicating and interacting across multiple networks. The World-Wide Web (Web) was created in the early 1990""s and is comprised of server-hosting computers (Web servers) connected to the Internet that have Web content files (referred to as Web pages) stored therewithin. Web pages are accessible by client programs (i.e., Web browsers) utilizing the Hypertext Transfer Protocol (HTTP) via a Transmission Control Protocol/Internet Protocol (TCP/IP) connection between a client-hosting device and a server-hosting device. While HTTP and hypertext documents are the prevalent forms for the Web, the Web itself refers to a wide range of protocols including Secure Hypertext Transfer Protocol (HTTPS), File Transfer Protocol (FTP), and Gopher and content formats including plain text, Extensible Markup Language (XML), as well as image formats such as Graphics Interchange Format (GIF) and Joint Photographic Experts Group (JPEG).
A Web site is conventionally a collection of Web pages and files related to a particular subject that includes a beginning file called a home page. A large Web site may reside on a number of geographically-dispersed Web servers. The Web site of the International Business Machines Corporation (www.ibm.com), for example, consists of thousands of Web pages and files spread out over various Web servers in locations world-wide.
As is known to those skilled in this art, a Web page is conventionally formatted via a standard page description language such as HyperText Markup Language (HTML), which typically contains text and can reference graphics, sound, animation, and video data. HTML provides for basic document formatting and allows a Web content provider to specify anchors or hypertext links (typically manifested as highlighted text) to other Web servers and files. When a user selects a particular hypertext link, a Web browser reads and interprets an address, called a Uniform Resource Locator (URL) associated with the link, connects the Web browser with a Web server at that address, and makes an HTTP request for the file identified in the link. The Web server then sends the requested file to the Web client which the Web browser interprets and displays to the user.
An intranet is a private computer network conventionally contained within an enterprise and that conventionally includes one or more servers in communication with multiple user computers. An intranet may be comprised of interlinked local area networks and may also use leased lines in a wide area network. An intranet may or may not include connections to the outside Internet. Intranets conventionally utilize various Internet protocols and, in general, often look like private versions of the Internet. An intranet user conventionally accesses an intranet server via a Web browser running locally on his/her computer.
Exemplary Web browsers for both Internet and intranet use include Netscape Navigator(copyright) (Netscape Communications Corporation, Mountain view, Calif.) and Internet Explorer(copyright) (Microsoft Corporation, Redmond, Wash.). Web browsers typically provide a graphical user interface for retrieving and viewing information, applications, and other resources hosted by Internet/intranet servers (hereinafter collectively referred to as xe2x80x9cWeb serversxe2x80x9d).
Web content on the Internet and intranets includes, but is not limited to, text, images, applications, applets, and other video and audio resources (collectively referred to herein as xe2x80x9celementsxe2x80x9d). Web content is conventionally delivered from a Web server to a Web browser on a user""s computer in the form of Web pages.
With the increasing mobility of today""s society, the demand for mobile computing capabilities has also increased. Many workers and professionals are downsizing their laptop computers to smaller palm-top or hand-held devices, such as personal digital assistants (PDAs). In addition, many people now utilize cellular telephones to access the Internet and to perform various other computing functions. Computing devices including, but not limited to, PDAs, cellular telephones, and computing devices utilized within appliances and automobiles, are often collectively referred to as xe2x80x9cpervasivexe2x80x9d computing devices. Many hand-held computing devices utilize the Microsoft(copyright) Windows CE and 3Com Palm Computing(copyright) platforms.
Unfortunately, pervasive computing devices may have displays that are small in size compared with desktop computer displays. As a result, portions of Web content, such as images and text that are otherwise displayable on a desktop computer display, may not be displayable on a pervasive computing device display unless some modifications to the images and/or text are made. For example, a desktop computer display having an array of 1024 pixels by 1280 pixels may be able to display a large (e.g., 2 megabit), 32 bit per pixel color image. A hand-held computing device with a display having an array of 160 pixels by 120 pixels and with the ability to display only about 3 bits per pixel, may have to ignore much of the image data. As a result the image may not be displayed properly, if at all, via the pervasive computing device display unless he size of the image is reduced. Text font and size ay also need to be changed to permit the display thereof within a pervasive computing device display. Performance limitations of pervasive computing devices, such as memory size and connection bandwidth, may also require changes to Web content for proper display via a pervasive computing device.
Files that may not be displayable via a pervasive computing device display can typically be transformed into a format that is displayable within a hand-held computing device display. For example, large, high resolution, color images can be transformed into small, black and white images that can be displayed within small, low resolution displays. Web content modification, such as image and text modification, is referred to as xe2x80x9ctranscoding.xe2x80x9d The modification of Web content structure, such as the structure of an HTML file, is referred to as xe2x80x9ctransformation.xe2x80x9d
Because some Web servers can recognize the type of client device requesting a file, files in the proper format for display via the requesting client device can be provided. Unfortunately, an enormous number of Web content files can reside within a Web site on both the Internet and on intranets. Furthermore, an enormous number of files are typically added every day to various Web sites. Because of the tremendous number of files available at Web sites, it may be somewhat impractical to create, store, and maintain duplicate Web content files that are displayable via selected computing devices. Accordingly, it would be desirable to be able to transcode and transform Web content upon demand so that Web content is displayable via any pervasive computing device.
Annotations could be made to each HTML file that specify how portions of the HTML file are to be transcoded and/or transformed so as to be displayable via a pervasive computing device. Such annotations could take the form of tags and/or attributes that could be included within an HTML file. Unfortunately, such tags and/or attributes could require the addition and acceptance thereof to the current HTML standard (i.e., HTML 4.0). Extending the syntax of the current HTML standard to incorporate new tags and/or attributes may be a difficult and time consuming task. Furthermore, even if it is possible to incorporate new tags and/or attributes within the current HTML standard, existing Web browsers may not be capable of handling these new tags and attributes.
In view of the above discussion, it is an object of the present invention to facilitate the display of Web content via pervasive computing devices that may have smaller displays and various performance limitations as compared with desktop computing devices.
It is another object of the present invention to facilitate the modification of Web content without requiring modification to existing HTML standards.
It is yet another object of the present invention to facilitate on-demand Web content modification into a form suitable for presentation on pervasive computing devices.
These and other objects of the present invention are provided by systems, methods and computer program products for modifying a Web content file, such as an HTML file, for display via a pervasive computing device, wherein the file contains an element having a characteristic that can hinder display of the file via the pervasive computing device. The term xe2x80x9cdisplayxe2x80x9d is intended to encompass all methods of presentation of Web content, whether visual, audio, or a combination thereof. Upon receiving a request from a pervasive computing device, the requested HTML file is analyzed for a link to a content modification file that contains information about how to modify elements within the HTML file so as to be displayable via the pervasive computing device.
The content modification file is then retrieved. Once retrieved, elements within the HTML file are modified using the information contained within the retrieved content modification file so as to be displayable via the requesting pervasive computing device. For example, selected elements may be replaced with alternative elements that are configured for display via the pervasive computing device. Elements having a lower priority than other elements may be reformatted or excluded altogether. Furthermore, elements may be divided into multiple elements. For example, text elements may be divided into separate sections each of which are entirely displayable within the display of a pervasive computing device.
The present invention can be advantageous because the need to maintain duplicate Web content files that are configured for display within specific types of pervasive computing devices may be eliminated. The present invention can allow a Web content file, such as an HTML file, to be modified on-demand for immediate display within virtually any type of computing device that requests the Web content file. Furthermore, the present invention can enable existing Web content to be transcoded and transformed so as to be displayable within any pervasive computing device upon request, and without requiring modifications to existing HTML standards.
The present invention is not limited to transcoding and transforming content for display via pervasive computing devices. Other implementations of the present invention may include accurately translating HTML files into multiple languages, and transcoding and transforming Web content based on a user""s preferences. For example, if a user is blind, text elements could be transcoded into audio files.